package com.sdweizan.sdk.bytedance.bean.refund.general;

import com.alibaba.fastjson.annotation.JSONField;
import com.sdweizan.sdk.bytedance.bean.BdBaseRequest;
import com.sdweizan.sdk.bytedance.constants.BdConstants;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * 通用交易-查询退款*
 *
 * <p>注意：refund_id , out_refund_no , order_id 三选一，不能都不填。
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class BdGeneralQueryRefundRequest implements BdBaseRequest {
  /** 抖音开平内部交易订单号* */
  @JSONField(name = "order_id")
  private String orderId;

  /** 开发者系统生成的退款单号。* */
  @JSONField(name = "out_refund_no")
  private String outRefundNo;

  /** 抖音开平内部交易退款单号* */
  @JSONField(name = "refund_id")
  private String refundId;

  @Override
  public String requestUri() {
    return BdConstants.OPEN_HOST + "/api/trade_basic/v1/developer/refund_query";
  }
}
